import java.util.*;
public abstract class Function{
	protected String id;
	protected List<Type> types = new ArrayList<Type>();
	
	public String getId() {
		return id;
	}
	
	public abstract Type evaluate(Type ...arguments);
}
